﻿﻿﻿<template>
  <div id="app">
    <div v-if="dataInfo.showMenu">
      <!-- 引入Header组件 -->
      <Header />
      <!-- 页面主内容区域 -->
      <div class="main-content">
        <div class="container">
          <RouterView />
        </div>
      </div>
    </div>
    <div v-else style="height: 100vh; width: 100%;" >
      <RouterView />
    </div>
    <!-- 讯飞AI助手 - 全局悬浮组件 -->
    <XunfeiAI />
  </div>
 
</template>

<script setup>
import { ref,reactive } from 'vue'
import Header from './component/Header.vue'
import XunfeiAI from './components/XunfeiAI.vue'
import { useRouter } from 'vue-router'

//不显示左边菜单栏、头、脚等，url路径有哪些，需要配置
const noMenu = ['/login','/register']
const router = useRouter()
const dataInfo = reactive({
  showMenu: true,
  //showLeftMenu:false,
  defaultOpen: ['1', '2'],
  currentPath: '/',
})

//全局前置路由守卫，初始化的时候调用，每次路由切换之前被调用
router.beforeEach((to, from, next) => {
  if (to.path == '/login'||to.path == '/register') {
    // 如果路径是 /login 则正常执行
    next()
  } 
  else {
    // // 如果不是 /login，判断是否有 token
    // if (!store.getToken || store.getToken == '') {
    //   // 如果没有token，说明没有登录过，则跳至登录页面 
    //   next({ path: '/login' }) //相当于 router.push({path: '/login'})
    // } else {
    //   // 否则继续执行
    //   next()
    // }
    next()
  }
  dataInfo.showMenu = !noMenu.includes(to.path)
  //dataInfo.showLeftMenu = exitLeftMenu.includes(to.path)
  dataInfo.currentPath = to.path
})
</script>

<style>
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  background-color: #f5f5f5;
}

#app {
  width: 100%;
  min-height: 100vh;
}

/* 主内容区域样式 */
.main-content {
  padding: 20px 0;
}
.container {
  width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
}

</style>